package Armas;


import javax.swing.Icon;
import javax.swing.ImageIcon;

import Disparos.Disparo;
import Disparos.DisparoLanzamisiles;
import General.Juego;

public class Lanzamisiles extends Arma {
	

	/**
	 * Constructor que inicializa las variables de instancia.
	 * @param X primera coordenada de la posicion del arma. 
	 * @param Y segunda coordenada de la posicion del arma.
	 * @param g juego en cuestion.
	 */
	public Lanzamisiles(int X, int Y, Juego g) {
		x = X;
		y = Y;
		velocidadDisparo = 5;
		poderAtaque = 15;
		rango = 6;
		game = g;
		colisiono = false;
		costo=16;

	}
	/**
	 * Permite controlar la vida del arma, ademas de producir los disparos de la misma.
	 */
	public void run() 
	{
		while(!game.fin() && !colisiono)
		{
			if (game.hayInsectoEnRango(x+rango*80,x,y))
				game.agregarDisparo(disparar());
			try {
				int x= 6000/velocidadDisparo;
				this.sleep(x);
			} catch (InterruptedException e) {}
		}
	}
	/**
	 * Retorna la imagen del arma.
	 */
	public Icon getImagen() {
		return new ImageIcon(getClass().getResource("/Imagenes/lanzamisil.gif"));
	}

	/**
	 * Devuelve el disparo asociado a dicha arma.
	 */
	public Disparo disparar() {
		return new DisparoLanzamisiles(x+5,y+10,game,poderAtaque);
	}

}
